Wrap (use) of variables in #defines.
authorRobert Lipe <robertlipe@gpsbabel.org>
Tue, 4 Dec 2018 06:47:36 +0000 (00:47 -0600)
committerRobert Lipe <robertlipe@gpsbabel.org>
Tue, 4 Dec 2018 06:47:36 +0000 (00:47 -0600)
defs.h
easygps.cc

diff --git a/defs.h b/defs.h
index ecdf1a535b8563b4e19747ebe847827c9319a6f2..be6c54ec800dc857d6c9c8c29f0ad685108910af 100644 (file)
--- a/defs.h
+++ b/defs.h
@@ -39,8 +39,8 @@
 #include "src/core/datetime.h"
 #include "src/core/optional.h"
 
-#define CSTR(qstr) (qstr.toUtf8().constData())
-#define CSTRc(qstr) (qstr.toLatin1().constData())
+#define CSTR(qstr) ((qstr).toUtf8().constData())
+#define CSTRc(qstr) ((qstr).toLatin1().constData())
 #define STRFROMUNICODE(qstr) (global_opts.codec->fromUnicode(qstr).constData())
 #define STRTOUNICODE(cstr) (global_opts.codec->toUnicode(cstr))
 
 /* knots to meters/second */
 #define KNOTS_TO_MPS(a) (KPH_TO_MPS((a)*1.852))
 
-#define MILLI_TO_MICRO(t) (t * 1000)  /* Milliseconds to Microseconds */
-#define MICRO_TO_MILLI(t) (t / 1000)  /* Microseconds to Milliseconds*/
-#define CENTI_TO_MICRO(t) (t * 10000) /* Centiseconds to Microseconds */
-#define MICRO_TO_CENTI(t) (t / 10000) /* Centiseconds to Microseconds */
+#define MILLI_TO_MICRO(t) ((t) * 1000)  /* Milliseconds to Microseconds */
+#define MICRO_TO_MILLI(t) ((t) / 1000)  /* Microseconds to Milliseconds*/
+#define CENTI_TO_MICRO(t) ((t) * 10000) /* Centiseconds to Microseconds */
+#define MICRO_TO_CENTI(t) ((t) / 10000) /* Centiseconds to Microseconds */
 
 /*
  * Snprintf is in SUS (so it's in most UNIX-like substance) and it's in
@@ -424,7 +424,7 @@ typedef struct {
   double min_alt;      /* -unknown_alt => invalid */
 } bounds;
 
-#define WAYPT_SET(wpt,member,val) { wpt->member = (val); wpt->wpt_flags.member = 1; }
+#define WAYPT_SET(wpt,member,val) { (wpt)->member = (val); wpt->wpt_flags.member = 1; }
 #define WAYPT_GET(wpt,member,def) ((wpt->wpt_flags.member) ? (wpt->member) : (def))
 #define WAYPT_UNSET(wpt,member) wpt->wpt_flags.member = 0
 #define WAYPT_HAS(wpt,member) (wpt->wpt_flags.member)
index e6d9a6c99736ba9b05e87ad428205069d3ff92e6..9ccc226ee8174d3b1bc2f1a95739442a7b57cddb 100644 (file)
@@ -47,7 +47,7 @@ rd_init(const QString& fname)
   int sz = gbfread(ibuf, 1, 52, file_in);
 
   if ((sz < 52) ||
-      strncmp(ibuf, ezsig, strlen(ezsig)) ||
+      strncmp(ibuf, ezsig, strlen(ezsig)) != 0 ||
       (ibuf[51] != 'W')) {
     fatal(MYNAME ": %s is not an EasyGPS file.\n", qPrintable(fname));
   }